package com.swjd.util;

import org.springframework.util.DigestUtils;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Random;
import java.util.UUID;

/**
 * Created by hxl on 2019/6/2  8:59
 */
public class Utils {

    public static String getMd5(String password) {
        /*
         *将一个字符串MD5加密，使用Spring包的
         * 原密码加密一次
         * 获取原密码加密后前8位字符
         * 8位字符+加密后的字符串,再加密一次
         */
        String md5One = DigestUtils.md5DigestAsHex(password.getBytes());
        String temp = md5One.substring(0, 8);
        String md5Two = DigestUtils.md5DigestAsHex((temp + md5One).getBytes());
        System.out.println(password + ":" + md5Two);
        return md5Two;
    }

    /**
     * 得到一个字符串形式的格式化UUID
     * @return
     */
    public static String getStrUUID(){
        Random random = new Random();
        int end = random.nextInt(999);
        //如果不足三位前面补0
        String endStr =String.format("%03d", end);
        return UUID.randomUUID().toString().replace("-", "")+endStr;
    }

    /**
     * 返回当前日期的字符串表示
     * YYYY-MM-DD
     * @return 当前日期的字符串表示
     */
    public static String getNowDate(){
        return new SimpleDateFormat("yyyy-MM-dd").format(new Date());
    }

    public static Date getDateByString(String dateStr){
        Date date=null;
        try {
            date=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").parse(dateStr);
        } catch (ParseException e) {
            e.printStackTrace();
        }
        return date;
    }

    /**
     * 获取当前日期的Date格式化类型(yyyy-MM-dd)
     * @return
     */
    public static Date createDate(){
        String nowDate = new SimpleDateFormat("yyyy-MM-dd").format(new Date());
        Date date=null;
        try {
            date=new SimpleDateFormat("yyyy-MM-dd").parse(nowDate);
        } catch (ParseException e) {
            e.printStackTrace();
        }
        return date;
    }

}
